var BookingViewCourse = function() {
    // UI Select 데이터
    this._HTMLDom = null;

    // Util class
    this.mUtil = null;

    // 예약 번호
    this.reserv_id = null;

    // 코스 상세 데이터
    this.course_data = null;

};

BookingViewCourse.prototype = {
    constructor : BookingViewCourse,
    ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
    // InterlockBooking class 에 연동요청
    ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
    /**
     * 실시간 예약 부킹 상세 데이터 가져오는 연동
     */
    getCourseDetailData : function($reserv_id) {
        var thisClass = this;
        var interlockBooking = new InterlockBooking();

        $.mobile.showPageLoadingMsg();

        interlockBooking.getCourseDetail($reserv_id, function($jsonData) {
            var objJson = new MJson();

            // alert("getCourseDetail success :: realtime :: " + JSON.stringify($jsonData));
            // alert("success check :: " + objJson.checkResult($jsonData));
            if (objJson.checkResult($jsonData)) {
                var item = $jsonData.msp.contents.items;
                thisClass.course_data = new Object();
                thisClass.course_data = {
                    // 코스 명
                    "course_name" : item.courseInfoNm,
                    // 코스 ID
                    "course_id" : item.courseInfoId,
                    // 코스 사진 경로
                    "img_path" : item.path,
                    // 코스 사진
                    "img_name" : item.orgnFileName,
                    // 코스 상세 설명
                    "description" : item.description,
                    // 코스 알림
                    "notice" : item.courseNotice
                }
                thisClass.setCourseInfo(thisClass.course_data);
            } else {
                console.log("getCourseDetail error");
                console.log($jsonData);
            }

            $.mobile.hidePageLoadingMsg();
        }, function(e) {
            alert("fail :: " + JSON.stringify(e));
            $.mobile.hidePageLoadingMsg();
        });
    },
    ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
    // Method
    ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
    /**
     * 골프장 코스 상세 데이터 설정
     */
    setCourseInfo : function($data) {
        var data = $data;
        var course_notice = this._HTMLDom.course_notice;
        var course_info = this._HTMLDom.course_info;
        var course_img = this._HTMLDom.course_img;

        // 코스 알림
        if (data.notice != undefined)
            course_notice.html(data.notice);

        // 코스 정보
        if (data.description != undefined)
            course_info.html(data.description + "<br/>");

        // 코스 이미지
        if (data.img_path != undefined || data.img_name != undefined) {
            // TODO :: 이미지 주소를 변환하여 처리 하는부분이 필요 하며 웹의 asp 처리 부분과 관련이 있어 웹쪽에서 처리가 완료 되면 그때 함께 처리
            // 참고 코드
            // return url.replace("/data/msp300/dl/files/free/admin/notice/", _ROOT + "/_course_super_img/");
        }
    },
    /**
     * 필요한 테이터 셋팅
     */
    setData : function($data) {
        this.reserv_id = $data.courseInfo.reserv_id;
    },
    ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
    // Initialize
    ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
    onPageShow : function() {
        console.log("BookingViewCourse onPageBeforeShow!");

        this.mUtil = document.globalObj.util;

        // 가격 보기 관련 데이터 셋팅 및 초기화
        this.setData(document.globalObj.BOOKING_DATA);

        var $layer = $('#course_info');
        // 화면 레이어 정의
        this._HTMLDom = {
            "course_notice" : $layer.find('li:first > div'),
            "course_info" : $layer.find('li:last > div'),
            "course_img" : $layer.find('li:last > div > img')
        };

        // 코스 상세 데이터 요청
        this.getCourseDetailData(this.reserv_id);
    }
};

